package com.ap.core.jaxb;

import javax.xml.namespace.QName;
import java.io.InputStream;
import java.util.Map;

/**
 * The Interface PullModelUnmarshaller.
 */
public interface PullModelUnmarshaller {


    /**
     * Unmarshall.
     *
     * @param input the input
     * @param contextMap the context map
     * @param typeMapping the type mapping
     * @return the model iterator
     * @throws UnmarshallerException the unmarshaller exception
     */
    ModelIterator unmarshall(final InputStream input, final Map<QName,String> contextMap, final Map<QName, Class<?>> typeMapping)  throws UnmarshallerException;

}
